package com.wei.czz.common.dto.blog;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.wei.czz.common.tool.BaseEntity;
import lombok.*;
import lombok.experimental.Accessors;

import java.util.Date;
import java.util.List;

/**
 * Created by IntelliJ IDEA.
 *
 * @author wei
 * date: 2021-09-27 22:39:00
 * className: BlogDto 博客详细信息封装类
 * version: 1.0
 * description:
 * 	`@JsonInclude(JsonInclude.Include.NON_EMPTY)`：接口返回对象时，如果某个字段值为空，序列化不操作该字段
 */
@Getter
@Setter
@Accessors(chain = true)
@AllArgsConstructor
@NoArgsConstructor
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class BlogDto extends BaseEntity {

	/**
	 * 博文id
	 * 
	 */
	private String blogId;

	/**
	 * 作者id
	 * 
	 */
	private String userId;

	/**
	 * 博客所属用户的用户名称
	 */
	private String userName;

	/**
	 * 用户空间id
	 * 
	 */
	private String spaceId;

	/**
	 * 标题
	 */
	private String title;

	/**
	 * 博客前言
	 */
	private String preface;

	/**
	 * 首图地址
	 */
	private String firstPicture;

	/**
	 * 标记[0-原创 1-转载 2-翻译]
	 */
	private Integer label;

	/**
	 * 博客被点赞数
	 */
	private Integer likeNum;

	/**
	 * 博客被评论数
	 */
	private Integer commentNum;

	/**
	 * 浏览次数
	 */
	private Integer viewNum;

	/**
	 * 博客被收藏数
	 */
	private Integer collectNum;

	/**
	 * 版权模块是否开启
	 */
	private Integer showStatement;

	/**
	 * 博客是否开启评论
	 */
	private Integer openComment;

	/**
	 * 博客热门状态[0-热门 1-正常]
	 */
	private Integer hotStatus;

	/**
	 * 博客推荐状态[0-推荐 1-正常]
	 */
	private Integer eliteStatus;

	/**
	 * 发布时间
	 */
	private Date issueTime;

	/**
	 * 创建时间
	 */
	private Date createTime;

	/**
	 * 博客正文内容
	 */
	private String content;

	/**
	 * 博客关联所有标签id
	 * 
	 */
	private List<String> tagIds;

	/**
	 * 博客关联所有标签名字
	 */
	private List<String> tagNames;

}
